import request from 'utils/request'

interface GetCaseTotalPerOption {
  dzcode?: string
}

// 案事件-分类统计- left center
export function getCaseTotalPer ({ dzcode }: GetCaseTotalPerOption) {
  return request({
    url: 'police/analysis/getCaseTotalPer',
    method: 'GET',
    params: {
      dzcode
    }
  })
}

interface GetCaseTotalTopOption {
  dzcode?: string // 行政区划code
  caseType?: string // 案事件类型
  time?: string // 周期：1三天、2七天、3一个月、4半年
  totalType: string // 统计类型：1.公司、2路线
}
// 案事件-数量排行- left bottom
export function getCaseTop ({ dzcode, caseType, time, totalType }: GetCaseTotalTopOption) {
  return request({
    url: 'police/analysis/getCaseTop',
    method: 'GET',
    params: {
      dzcode,
      caseType,
      time,
      totalType
    }
  })
}

// 案事件-地图分布- center
export function getCaseMap ({ dzcode }: GetCaseTotalPerOption) {
  return request({
    url: 'police/analysis/getCaseMap',
    method: 'GET',
    params: {
      dzcode
    }
  })
}

interface GetCaseListOption {
  dzcode: string
  pageSize: number
  pageIndex: number
  timestamp: string // 2021-02-23 11:20:30
  searchKey?: string // 关键词搜索
  orgName?: string // 单位名称
  routeName?: string // 线路名称
  caseType?: string // 案件类型
  time?: string // 时间周期：1三天、2七天、3一个月、4半年
}

// 案事件-案件列表
export function getCaseList ({ dzcode, pageSize, timestamp, pageIndex, searchKey, orgName, routeName, caseType, time }: GetCaseListOption) {
  return request({
    url: 'police/analysis/getCaseList',
    method: 'GET',
    params: {
      dzcode,
      pageSize,
      pageIndex,
      timestamp,
      searchKey,
      orgName,
      routeName,
      caseType,
      time
    }
  })
}

// 字典接口
export function getTypeList () {
  return request({
    url: 'admin/listSimple/police_warning_type',
    method: 'GET'
  })
}
